package gob.reniec.apachecxf.consulta;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;

import javax.jws.WebService;

@WebService(endpointInterface = "gob.reniec.apachecxf.consulta.Autentificacion")
public class AutentificacionImpl implements Autentificacion {
	SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");
	
	public String obtenerDatos(String dni) {
		List<AutentificacionInfo> ciudadanos = getData();
		AutentificacionInfo ciudadanoBuscado = null;
		for (AutentificacionInfo autentificacionInfo : ciudadanos) {
			if (autentificacionInfo.getDni().equals(dni)) {
				ciudadanoBuscado = autentificacionInfo;
				break;
			}			
		}
		
		if (ciudadanoBuscado !=null) {
			String autentificacionCadena = convertirString(ciudadanoBuscado);
			return autentificacionCadena;
		}
		else{
			return "No esta registrado";
		}
	}
	private String convertirString(AutentificacionInfo ciudadanoBuscado) {
		StringBuffer autentificacionCadena=new StringBuffer();
		autentificacionCadena = autentificacionCadena.append(ciudadanoBuscado.getDni()).append(",");
		autentificacionCadena = autentificacionCadena.append(ciudadanoBuscado.getNombre()).append(",");
		autentificacionCadena = autentificacionCadena.append(ciudadanoBuscado.getApePaterno()).append(",");
		autentificacionCadena = autentificacionCadena.append(ciudadanoBuscado.getApeMaterno()).append(",");
		autentificacionCadena = autentificacionCadena.append(ciudadanoBuscado.getSexo()).append(",");
		autentificacionCadena = autentificacionCadena.append(ciudadanoBuscado.getDireccion()).append(",");
		autentificacionCadena = autentificacionCadena.append(formato.format(ciudadanoBuscado.getFechaNacimiento()));		
		return autentificacionCadena.toString();
	}
	private List<AutentificacionInfo> getData() {
		List<AutentificacionInfo> ciudadanos = new ArrayList<AutentificacionInfo>();
		
		try {
			{
		    
				AutentificacionInfo autentificacionBean;
				autentificacionBean = new AutentificacionInfo("10664149", "Roger", "Campos",
						"Salas", "Masculino", "Av. Naranjal 318 - Urb. Industrial", formato.parse("23/05/1979"));
				ciudadanos.add(autentificacionBean);
			}
			{
				AutentificacionInfo autentificacionBean;
				autentificacionBean = new AutentificacionInfo("10664149", "Roger", "Campos",
						"Salas", "Masculino", "Av. Naranjal 318 - Urb. Industrial", formato.parse("23/05/1979"));
				ciudadanos.add(autentificacionBean);
			}
			{
				AutentificacionInfo autentificacionBean;
				autentificacionBean = new AutentificacionInfo("10664149", "Roger", "Campos",
						"Salas", "Masculino", "Av. Naranjal 318 - Urb. Industrial", formato.parse("23/05/1979"));
				ciudadanos.add(autentificacionBean);
			}
			{
				AutentificacionInfo autentificacionBean;
				autentificacionBean = new AutentificacionInfo("10664149", "Roger", "Campos",
						"Salas", "Masculino", "Av. Naranjal 318 - Urb. Industrial", formato.parse("23/05/1979"));
				ciudadanos.add(autentificacionBean);
			}

		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return ciudadanos;
	}

}
